#!/usr/local/roadm/bin/perl

use strict;
use warnings;

print "Starting main program\n";
my @childs;
my $py = "python main.py";
my $tempPy;

for ( my $count = @ARGV[0]; $count <= @ARGV[1]; $count++) {
        my $pid = fork();
        if ($pid) {
        # parent
        #print "pid is $pid, parent $$\n";
        push(@childs, $pid);
        } elsif ($pid == 0) {
                # child
                sub1($count);
                exit 0;
        } else {
                die "couldnt fork: $!\n";
        }
}

foreach (@childs) {
        my $tmp = waitpid($_, 0);
         print "done with pid $tmp\n";
}

print "End of main program\n";

sub sub1 {
        my $num = shift;
        my $port = $num + 5990;
        print " $num on $port";
        $tempPy = "echo \"hello 127.0.0.1:5990\" | " . $py . " p$num " . (1 + int rand(10)) . " $port &";
        `$tempPy`;
        print "done with child process for $num\n";
        return $num;
}

